Users often rely on applications or services to quickly or efficiently perform computing tasks. In order to execute these computing tasks, these applications and services use one or more computing devices that read or write data to one or more storage devices (e.g., hard disk drives (HDD)). For example, a user may issue a query from a user interface that requests a particular set of data. Responsively, the request can be communicated over a network to one or more computing devices associated with the applications or services. These computing devices may have to, for example, identify an address (e.g., a logical block address) where the requested data is located at, cause one or more mechanical components of a hard disk drive (e.g., a read/write head) to find the correct address or track on the hard disk drive, and then return the data back to the user. Moreover, many of these applications or services are implemented in large scale distributed computing environments (e.g., cloud computing systems) where executing these user computing tasks occur multiple times and in parallel and can utilize a vast amount of energy. As such, these computing devices are faced with the challenge of quickly but efficiently performing computing tasks for users.